 /*在一个字符串(1<=字符串长度<=10000，全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置
 思路：用map容器解决，简单易懂*/
 //map:map 容器通常被实现为一个二叉搜索树（及其变型），该数据结构具有对数据自动排序的功能。
//map后，不能以map的迭代器遍历，必需用str[i]来遍历。
 int FirstNotRepeatingChar(string str) {
        map<char, int> mp;
        for(int i = 0; i < str.size(); ++i)
            mp[str[i]]++;
        for(int i = 0; i < str.size(); ++i){
            if(mp[str[i]]==1)
                return i;
        }
        return -1;
    }